Game device

ABSTRACT

It is an object of this invention to provide a method of expressing, in an easily visible manner, a game proceeded in a plurality of game fields formed hierarchically. At least first and second game fields are hierarchically formed in a three-dimensional virtual space. It is possible to enjoy games proceeded simultaneously and in parallel in upper and lower spaces by displaying the proceeds of the games in the respective fields as seen from a viewpoint in the space.

BACKGROUND OF THE INVENTION

The present invention relates to a suggested game device for forminggame fields of multiple hierarchies in a three-dimensional virtual spaceand for playing a game in a plurality of game fields where the gameproceeds simultaneously.

With the progress of computer technology, video game devices utilizingcomputer graphics technology have come to be widely used. This type ofvideo game devices are widely accepted by users. A large number ofvarious kinds of game devices have been devised and various gamesoftware products have been supplied.

For example, there is a battle game in which a base and tanks, etc.placed on the ground fight against helicopters, fighter planes andattack planes in the sky. In such a game, objects (such as airplanes) inthe sky and objects (such as tanks) on the ground are displayedsimultaneously on one plane and each object is controlled by one gameprogram.

However, it is difficult to express both the objects on the ground andthe objects in the sky on one plane in an easily visible manner.Moreover, since moving speeds and moving properties of the objects onthe ground are usually very different from those of the objects in thesky, it is difficult to properly control the movements of all objects ata common time axis. If programs of different time axes are made toproceed separately for the sky and the ground, it is difficult to link asystem for the sky with a system for the ground and to express theobjects in the sky and on the ground simultaneously at the same point oftime. Furthermore, it is desirable to realistically express phenomenasuch as rain.

Accordingly, it is an object of the present invention to provide amethod of making a game, which is proceeded in a plurality ofhierarchically formed game fields, easily visible.

It is another object of this invention to provide an easily visiblecursor which indicates corresponding sites in upper and lower gamefields in a three-dimensional manner.

It is a further object of this invention to provide a game devicecapable of forming pictures which will give a visual effect of, forexample, rain drops falling from the sky.

SUMMARY OF THE INVENTION

In order to achieve the above-described objects, a game device of thisinvention is a game device for proceeding a game by placing objectsrelated to the game in a three-dimensional virtual space and bycontrolling the objects. The game device comprises: first gameproceeding means (S102 and S104) for proceeding the game bycontrolling,the objects in a first game field in the three-dimensionalvirtual space; second game proceeding means (S106 and S108) forproceeding the game by controlling the objects in a second game field inthe three-dimensional virtual space; and picture transformation displaymeans (S5116) for forming a screen picture by transforming thecoordinates of each object in the first and second game fields existingwithin view of a viewpoint located in the three-dimensional virtualspace.

This construction makes it possible to express the game proceeded in aplurality of game fields simultaneously. It is possible to control eachfield by using separate algorithms and to independently set a time axis,a display scale or the like for indicating the progress of a game.

According to this invention, a game device for proceeding a game byplacing objects related to the game in a three-dimensional virtual spaceand by controlling the objects, comprises: first game proceeding means(S102 and S104) for proceeding the game by controlling the objects in afirst game field in the three-dimensional virtual space; second gameproceeding means (S106 and S108) for proceeding the game by controllingthe objects in a second game field in the three-dimensional virtualspace; mutual processing means (S112 and S114) for processing the gamebetween the first and second game fields and for placing and controllingthe objects in relation to the processing; and perspectivetransformation display means (S116) for forming a screen picture bytransforming the coordinates of each object within view of a viewpointlocated in the three-dimensional virtual space.

This construction makes it possible to proceed a game independently inthe respective fields and to proceed a game with, for example, mutualintervention between the fields and linking of events.

The first game proceeding means and the second game proceeding means arecapable of determining respective proceeding speeds(or scroll speeds) ofthe first game field and the second game field separately, therebyproducing a sense of far and near.

Moreover, when the viewpoint is moved between the first game field andthe second game field (S202 and S232), the perspective transformationdisplay means reduces one game field and displays the reduced game fieldin a picture of the other game field (S204, S206, S208, S234, S236 andS238), thereby producing an ascending or descending visual effect.

A game device of this invention is a game device for proceeding a gameby placing game objects related to the game in a three-dimensionalvirtual space and by controlling the objects, and the game devicecomprises: first game proceeding means for proceeding the game bycontrolling the game objects in a first game field in thethree-dimensional virtual space, second game proceeding means forproceeding the game by controlling the game objects in a second gamefield in the three-dimensional virtual space; cursor object formingmeans (S302 through S320) for forming a cursor object indicating acertain area (S304) of one of the first and second game fields as wellas an area (S312) of the other game field corresponding to the certainarea; and perspective transformation display means (S320) for forming ascreen picture by transforming the coordinates of the objects includingthe cursor object within view of a viewpoint located in thethree-dimensional virtual space.

This construction makes it possible to display the corresponding areasin the game fields by using a three-dimensional cursor and to obtain acursor which is easy to perceive visually.

The cursor object forming means forms the cursor object as a polyhedronwith an area of one game field as its top and with an area of the othergame field as its bottom, thereby the corresponding areas are directlyindicated and are easily perceivable.

Since the cursor object forming means is capable of displayinginformation on the side face of the cursor object, it is possible toapprehend various information during a game.

The cursor object forming means sets display scales of the top andbottom of the cursor object, respectively corresponding to the displayscales of the first and second game fields. Accordingly, it is possibleto express in an easily visible manner the corresponding areas in thegame fields where games of different display scales are proceeded.

A game device of this invention is a game device for proceeding a gamein a game field formed in a three-dimensional virtual space, and thegame device comprises: cursor moving means for moving a cursor in thegame field in accordance with operation; viewpoint moving means formoving a viewpoint located in the three-dimensional virtual space inaccordance with the cursor; coordinate transforming means fortransforming a view range of the viewpoint to a screen coordinatesystem; and viewpoint position adjusting means (S416) for adjusting aposition of the viewpoint so that a non-mapping area will not appear onthe screen when the view range extends beyond a mapping area, in which apicture of the game field is drawn, to the non-mapping area (S412).

The viewpoint position adjusting means adjusts the position of theviewpoint on condition that the cursor has moved beyond the view range.

A game device of this invention is a game device for proceeding a gamein a game field formed in a three-dimensional virtual space, and thegame device comprises: viewpoint moving means for moving a viewpoint inconformity with a cursor moving in the game field in accordance withoperation; coordinate transforming means (S406) for transforming aposition of the cursor from a three-dimensional coordinate system to adisplay coordinate system; and viewpoint position adjusting means (S412,S416 and S414) for finding the position of the viewpoint with the cursorbeing located at a central position of a display range of a screen(S410) and for adjusting the position of the viewpoint when the positionof the viewpoint is beyond a margin area so that the viewpoint will belocated within the margin area.

The margin area is the area where the viewpoint can be moved withoutcausing the non-mapping area of the game field to appear.

A game device of this invention comprises: a memory (V-RAM) for storing,as picture data, a plurality of patterns of different sizes in aplurality of areas divided in accordance with a line number in oneframe; a picture data processing device (VDP) for reading the picturedata from the memory, processing the data at a designatedreduction/expansion factor, and supplying the processed data to apicture display device; reduction/expansion factor setting means (S508)for finding a reduction/expansion factor, which corresponds to theposition on a screen as specified by the frame and line of a videosignal to be drawn, on the basis of a first function and for setting thereduction/expansion factor at the picture data processing device;pattern size outputting means (S510) for determining, on the basis of asecond function, a size pattern corresponding to the position on thescreen; and reading position setting means (S514 through S520) forobtaining an address of the pattern to be read from the memory on thebasis of the position on the screen and a moving speed on the screen asdecided for the determined pattern, and for setting the address at thepicture data processing device.

This construction makes it possible to produce a visual effect of, forexample, causing rain drops to seem falling from the sky down to theground.

Moreover, this invention relates to an information storage medium with aprogram stored thereon, the program for activating a computer system asthe game device described above.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the appearance of a game device of an embodiment of thisinvention.

FIG. 2 is a functional block diagram of the game device of theembodiment of this invention.

FIG. 3 describes an example of a three-dimensional virtual space.

FIG. 4 is a flowchart which explains an example of an algorithm forproceeding a game by displaying, as seen from one viewpoint, objects ineach of plural laminated game fields.

FIG. 5 describes an example of a bombing game proceeded in two gamefields.

FIG. 6 is a flowchart which explains an algorithm of a screen whichgives a visual effect of ascending as a viewpoint is moved from a lowaltitude to a high altitude.

FIG. 7 is a flowchart which explains an algorithm of a screen whichgives a visual effect of descending as a viewpoint is moved from a highaltitude to a low altitude.

FIG. 8 shows picture examples of ascent and descent of the viewpoint.

FIG. 9 describes an example of the use of a cursor in two game fields.

FIG. 10 describes an example in which the correlation between the twoareas is shown with the cursor.

FIG. 11 shows an example of a three-dimensional cursor.

FIG. 12 shows an example of game fields as seen from a viewpoint at ahigh altitude.

FIG. 13 shows a display example of the cursor when a first game field isseen from the viewpoint at a low altitude.

FIG. 14 shows another example of the three-dimensional cursor.

FIG. 15 shows a further example of the three-dimensional cursor.

FIG. 16 describes an example of the three-dimensional cursor concerningin which consideration is given to a difference in the amount ofinformation between the two game fields.

FIG. 17 describes an example of the three-dimensional cursor used for afighter plane.

FIG. 18 describes an example of the three-dimensional cursor used for anattack plane.

FIG. 19 describes an example of the three-dimensional cursor used for abombing plane.

FIG. 20 is a flowchart which explains a display algorithm of thethree-dimensional cursor.

FIG. 21 explains the adjustment of a viewpoint position in a non-mappingarea (or the upper edge) of the game field.

FIG. 22 explains the adjustment of a viewpoint position in a non-mappingarea (or the lower edge) of the game field.

FIG. 23 is a flowchart which explains an example of an algorithmconcerning the adjustment of the viewpoint position.

FIG. 24 shows an example of a V-RAM which retains raining patterns.

FIG. 25 shows an example of a picture on a TV screen.

FIG. 26 shows an example of reduction and expansion of strip-shapedareas.

FIG. 27 is a flowchart which explains an algorithm for forming a picturewhich will realize a visual effect of the state of raining.

DETAILED DESCRIPTION OF THE INVENTION

Embodiments of the present invention are hereinafter explained withreference to drawings. First, an explanation is given about an exampleof a game device (or computer system) for executing this invention. FIG.1 shows the appearance of a video game device according to an embodimentof this invention. In FIG. 1, a main video game device 1 has asubstantial box shape, inside of which substrates and other elements forgame processing are provided. At the front side of the main video gamedevice 1, two connectors 2 a are provided, to which pads 2 b for gameoperation are connected through cables 2 c. When two players play, forexample, a bombing game, two pads 2 b are used.

At the top of the main video game device 1, a cartridge I/F 1 a forconnection to a ROM cartridge and a CD-ROM drive 1 b for reading aCD-ROM are provided. At the back of the main video game device 1, avideo output terminal and an audio output terminal (not shown) areprovided. This video output terminal is connected to a video inputterminal of a TV picture receiver through a cable 4 a, and the audiooutput terminal is connected to an audio input terminal of the TVpicture receiver 5 through a cable 4 b. With such a video game device, auser can play a game by operating the pad 2 b while watching picturesdisplayed on the TV picture receiver 5.

At the back of the main video game device 1, there is also a connector(not shown) for connection to peripheral equipment. This connector forperipheral equipment is connected to a floppy disk drive (FDD) 3 b,which is a peripheral, through a cable 3 c.

FIG. 2 is a block diagram showing the outline of a TV game deviceaccording to this embodiment. This picture processing device is composedof: a CPU block 10 for controlling the device in its entirety; a videoblock 11 for controlling the display of a game screen; a sound block 12for generating sound effects or the like; a subsystem 13 for reading aCD-ROM; and other elements.

The CPU block 10 is composed of an SCU (System Control Unit) 100, a mainCPU 101, a RAM 102, a ROM 103, a cartridge I/F 1 a, a sub-CPU 104, a CPUbus 105 and other elements. The main CPU 101, which is composed of amaster, CPU SH and a slave CPU SH, controls the device in its entirety.This main CPU 101 comprises the same operating function inside as thatof a DSP (Digital Signal Processor) and is capable of executingapplication software at a high speed. The main CPU 101 automaticallyrecognizes the type of peripheral (FDD 3 b in FIG. 2) connected to theconnector 3 a (at the back of the main game device) and performs datacommunication with this peripheral. Specifically speaking, theperipheral is connected to an SCI (Serial Communication Interface)contained in the main CPU 101. Moreover, the serial connector 3 a isconnected to three SCI signal lines respectively for the master CPU SHand for the slave CPU SH and is also connected to a MIDI in/out linefrom an SCSP (sound DSP). The FDD. 3 b is used, for example, to storedata of a backup memory (not shown) (which stores various kinds of dataand parameters for a game) on a floppy disk and to copy data of a floppydisk onto the backup memory.

The RAM 102 is used as a work area for the main CPU 101. The ROM 103has, for example, an initial program for initialization written thereon.The SCU 100 is designed to perform smooth input and output of databetween, for example, the main CPU 101, VDPs 120 and 130, the DSP 140,and the CPU 141 by controlling buses 105, 106 and 107. The SCU 100comprises a DMA controller inside and is capable of transmitting spritedata during a game to a VRAM within the video block 11. This makes itpossible to execute application software of, for example, a game at ahigh speed. The cartridge I/F 1 a is designed to input applicationsoftware which is supplied in a ROM cartridge form.

The sub-CPU 104 is called an SMPC (System Manager & Peripheral Control)and is provided with, for example, a function to collect peripheral datafrom the pad 2 b through the connector 2 a upon request of the main CPU101. The main CPU 101 conducts processing, for example, to move attackplanes on a game screen on the basis of the peripheral data receivedfrom the sub-CPU 104. The connector 2 a can be connected to an optionalperipheral among a pad, a joystick, a keyboard and the like. The sub-CPU104 is provided with a function to automatically recognize the type ofperipheral connected to the connector 2 a (at a terminal on the maingame device side) and to collect peripheral data or the like in acommunication format in accordance with the type of peripheral.

The video block 11 comprises: a VDP (Video Display Processor) 120 whichperforms drawing of, for example, characters composed of polygon datafor a video game; and a VDP 130 which performs drawing of backgroundpictures, synthesis of polygon picture data and the background pictures,and clipping processing. The VDP 120 is connected to the VRAM 121 andframe buffers 122 and 123. Drawing data of polygons which representcharacters for a video game device is sent from the main CPU 101 to theSCU 100 and then to the VDP 120 and is then written on the VRAM 121. Thedrawing data written on the VRAM 121 is drawn on the frame buffer 122 or123 for drawing, for example, in a 16 bits/pixel or 8 bits/pixel format.The data drawn on the frame buffer 122 or 123 is sent to the VDP 130.Information about drawing control is sent from the main CPU 101 to theSCU 100 and then given to the VDP 120. The VDP 120 then executes drawingprocessing in accordance with this instruction.

The VDP 130 is connected to the VRAM. 131 and it is constructed in amanner such that picture data outputted from the VDP 130 is outputted toan encoder 160 through a memory 132. The encoder 160 addssynchronization signals or the like to the picture data, therebygenerating video signals which are then outputted to a TV picturereceiver 5. Accordingly, various kinds of game pictures are displayed onthe TV picture receiver 5.

The sound block 12 is composed of a DSP 140 for synthesizing sound inthe PCM format or the FM format, and a CPU 141 for, for example,controlling the DSP 140. Sound data generated by DSP 140 are convertedinto two-channel signals by a D/A converter 170, which are thenoutputted to a speaker 5 b.

The subsystem 13 is composed of a CD-ROM drive 1 b, a CD I/F 180, a CPU181, an MPEG AUDIO 182, an MPEG VIDEO 183 and other elements. Thissubsystem 13 has functions, for example, to read application softwaresupplied in a CD-ROM form and to reproduce animation. The CD-ROM drive 1b is designed to read data from a CD-ROM. The CPU 181 performsprocessing such as control of the CD-ROM drive 1 b and correction oferrors in the read data. The data read from a CD-ROM are supplied to themain CPU 101 through the CD I/F 180, the bus 106 and the SCU 100 and areutilized as application software. The MPEG AUDIO 182 and MPEG VIDEO 183are devices for restoring data which are compressed in MPEG (MotionPicture Expert Group) standards. Restoration of the MPEG compresseddata, which are written on a CD-ROM, by using the MPEG AUDIO 182 andMPEG VIDEO 183 makes it possible to reproduce animation.

An explanation is hereinafter given about an algorithm of a firstinvention. According to this embodiment, for example, as indicated inthe three-dimensional virtual space in FIG. 3, a plane of the sky is setas a first game field in an area (Xn, Yn, Zh) of a world coordinatesystem and a plane of the ground is set as a second game field in anarea (Xn, Yn, ZO) of the world coordinate system. The first and secondgame fields may be either a plane coordinate system (in which objectsare expressed in two dimensions) or a three-dimensional coordinatesystem (in which objects are expressed in three dimensions). On theground, objects related to a game (or game objects) such as bases,positions, tanks and antiaircraft fire machines are located. In the sky,airplane objects (game objects) such as attack planes and fighter planesare located. Airplanes take off from an airport on the ground and moveto the first game field. Between the plane of the sky and the plane ofthe ground, semitransparent cloud objects are located as appropriate sothat views from the objects on the ground and from the objects in thesky are obstructed adequately, thereby making a game more amusing. Aviewpoint (or camera) can move in this world coordinate system, andobjects which are located in the world coordinate system and are withinview (or display area) are made to become subject to, for example,projection transformation or screen coordinate transformation, therebycoordinate transformation of the view in the three-dimensional spaceinto a two-dimensional screen is executed to display the view on amonitor. The letter “A” in FIG. 3 represents an example of the viewpoint(a viewpoint at a high altitude) for observing at a high altitude thefirst game field (or airplanes) and the second game field (or theground). The letter “B” in FIG. 3 represents an example of the viewpoint(a viewpoint at a low altitude) for observing at a low altitude only thesecond game field (or the ground). As described above, the viewpoint canmove within the three-dimensional virtual space.

FIG. 4 shows the outline of an algorithm for displaying, on one screen,objects in each of the laminated game fields.

The above-described computer system proceeds a first game in a firstgame field in accordance with a first game program. The first game is,for example, an air battle game conducted by airplanes such as fighterplanes, attack planes, helicopters and transport planes. A player cancontrol the movements of airplanes through the pad 2 b. It is alsopossible to designate control parameters such as a scroll speed by usingthe pad 2 b. If an event takes place in which airplanes attack objects(for example, tanks or warships) in the second game field (on the groundor on the sea), an occurrence flag of the relevant event is set (S102).An explanation will be given later about processing for a battleconducted between two game fields.

The first game program controls positions of objects of airplanes andthe relevant objects are located at the relevant positions in the firstgame field (S104).

In the second game field, the computer system proeeds a second game inaccordance with a second game program. For example, the second game isground warfare conducted by tanks, cannons, antiaircraft guns, bases andthe like.

A player can control the movements of, for example, tanks through thepad 2 b. It is also possible to designate control parameters such as ascroll speed by using the pad 2 b. If an event takes place in whichantiaircraft guns attack objects (for example, airplanes) in the firstgame field (in the sky), an occurrence flag of the relevant event is set(S106). An explanation will be given later about processing for a battleconducted between two game fields.

The second game program controls positions of objects of, for example,tanks and the relevant objects are located at the relevant positions inthe second game field (S108).

It is determined whether or not an event has occurred between the gamefields (S110).

If no event has occurred, games of the first game field and the secondgame field will proceed independently. Objects in the three-dimensionalvirtual space and background pictures become subject to, for example,projection transformation or transformation into a screen coordinatesystem within a view range as seen from a predetermined viewpointposition in the world coordinate system, thereby forming pictures forthe monitor and then displaying the pictures on the TV picture receiver(S116). Then the processing returns to the main program (not shown) andthe processing is repeated from the step S102, thereby forming picturesfor each frame.

If an event has occurred between the first game field and the secondgame field (S110), event processing is conducted (S112). For example, inthe above-described battle game, an attack between the first game fieldand the second game field corresponds to the event. When airplanes inthe sky bomb a target on the ground, a bombing event flag is set at thestep S102. Bombing parameters such as coordinates, a direction and speedof an airplane are delivered as event information to the eventprocessing. In the bombing event processing, a bombed point on theground and a dropping time (or the number of frames) are calculated onthe basis of the bombing parameters. Objects which represent traces ofbombs are located by using a certain number of frames from a bombdropping position to the bombed point (for example, as shown in FIGS. 17through 19 described later). When an object such as a tank exists withina predetermined range of the bombed point, the tank object is replacedwith an object which represents a tank in a destroyed state. A sound ofexplosion or the like is set.

When an antiaircraft fire is performed from the ground against airplanesin the sky, an event of antiaircraft fire takes place. Accordingly,antiaircraft shooting parameters such as firing coordinates, a firingdirection and a shooting range of an antiaircraft firing gun aredelivered to event processing. In the event processing, a trajectory iscalculated on the basis of the antiaircraft shooting parameters, and areaching time to the second game field and whether or not a bullet willhit an airplane are determined (S112). An object representing atrajectory is located for the number of frames corresponding to thereaching time. When an airplane object of the first game field exists onthe trajectory, a destroyed airplane object is located for a shortperiod of time and is then extinguished (S114). The processing of theevent between the game fields is conducted by locating objectscorresponding to the event occurred and by controlling the objects.

Objects of the first and second game fields, which are located in thethree-dimensional virtual space, become subject to, for example,projection transformation or transformation into the screen coordinatesystem within a view range as seen from a predetermined viewpointposition in the world coordinate system, thereby forming pictures forthe monitor and then displaying the pictures on the TV picture receiver(S116). Then the processing returns to the main program and theprocessing is repeated from the step S102, thereby forming pictures foreach frame.

An interaction between the first game field and the second game field isnot necessarily required. For example, it is possible to set the firstgame field as a travel on a balloon and to set the second game field asa scene on the ground where cars or ships move. It is also possible toproceed games which have no relationship to each other. For example, itis possible to play the game of “shogi” in the first game field and thegame of “go” in the second game field.

FIG. 5 explains an example of a bombing game as described above. Gameobjects are developed in two game fields, that is, on the plane of thesky (the first game field) located at an upper position and on the planeof the ground (the second game field) located at a lower position. It ispossible to display the respective game fields on the same scale ordifferent scales. It is possible to enhance a three-dimensional taste byscrolling the game field at the front as seen from the viewpoint at ahigher speed than that of the game field at the back.

As the objects on the plane of the sky, there are bombing planes 1through 3, fighter planes (not shown), missiles (not shown) and the likeon the opponent's side or the player's side. As the objects on the planeof the ground, there are tanks, antiaircraft guns, antiaircraft missilesand the like on the opponent's side or the player's side. A bombingplane can attack (or bomb) the objects on the ground within an areawhere it is located. For example, if a player selects the bombing plane3, an area on the ground corresponding to an area of the bombing plane 3is displayed with a frame. The bombing plane 3 can select an attacktarget within the area. On the contrary, the bombing plane 3 receives anattack from antiaircraft vehicles within the area.

FIGS. 6 and 7 are flowcharts which explain examples of screen displayswhen the viewpoint is moved between a low altitude and a high altitudein the three-dimensional virtual space. FIG. 8 explains a movementprocess. In this example, when the viewpoint is moved from a lowaltitude to a high altitude, it is necessary to transform thecoordinates of all the objects within view of each viewpoint moving inthe three-dimensional virtual space in order to obtain screen pictures,thereby continuously displaying pictures in the movement process.However, the amount of operation becomes enormous. Accordingly, insteadof the above-described operation, a simpler arithmetic operation is usedto obtain a similar visual effect.

As shown in FIG. 8(a), the viewpoint is first located at a position tooverlook a map of the ground (the second game field). If a playerselects an airport A on this map, the main program distinguishes theselection and selects an algorithm for movement of the viewpoint to ahigh altitude as shown in FIG. 6 (S202).

First, a picture of the second game field as seen from the viewpoint ata low altitude is formed. This picture in its entirety is graduallyreduced toward the center of the screen to form a reduced picture(S204). A picture of the first game field as seen from the viewpoint ata high altitude is formed (S206). The picture of the first game fieldand the reduced picture of the second picture are synthesized to displaya picture of the first game field at a high altitude in the areasurrounding the reduced picture as shown in FIG. 8(b). The steps S204through S208 are repeated until the viewpoint is moved to a targetviewpoint position at a high altitude (or until a predetermined amountof time has elapsed) (S210).

Accordingly, it seems as if the picture of the second game field reducestoward the center and the first game field expands around the reducedpicture of the second game field. This makes it possible to give aplayer a visual effect of making him/her feel like taking off from theairport to the sky. As shown in FIG. 8(c), it is possible to leave thereduced picture of the ground at a part of the picture of the sky. Afterthe picture has shifted to that of the sky, it becomes possible tocontrol the airplane objects.

FIG. 7 is an algorithm showing an example of screen display in the caseof descent. When a small picture (as shown in FIG. 8(c)) which shows thestate on the ground is selected, or when game conditions upon shiftingto the map of the ground, for example, conditions of an attack at a lowaltitude or a crash are satisfied (S232), the viewpoint at a highaltitude is moved to the viewpoint at a low altitude.

Namely, the small picture showing the ground, which is displayed in thepicture displaying the first game field, is expanded (S234). A pictureof the first game field as seen from the viewpoint at a high altitude isformed (S236). The small picture expanding outward is synthesized ontothe picture showing the first game field to display a synthesizedpicture (S238). The steps S234 through S238 are repeated until theviewpoint is moved to the target viewpoint position at a low altitude(or until a predetermined amount of time has elapsed) (S240). As aresult, a picture of the ground which is expanding is displayed as shownin FIG. 8(d), thereby producing a visual effect of descending from ahigh altitude to a low altitude.

Although with the above-described embodiment an explanation has beengiven about an example of two game fields, the plane of the sky and theplane of the ground, there is no limitation about the mode of the gamefields. For example, the plane of the ground can be a plane of the seaand a battle between ships and airplanes can be performed. Moreover, thegame fields are not limited to two. For example, in an antisubmarinewarfare game, airplane objects are located on the plane of the sky of atop layer (the first game field), and objects such as warships arelocated on the plane of the sea of a middle layer (the second gamefield), and objects such as submarines are located on the undersea planeof a bottom layer (a third game field). Then, a warfare is proceeded inthe three-dimensional virtual game space including the respective planesby means of simulation performed by a computer system.

An explanation is hereinafter given about a cursor in thethree-dimensional virtual space formed in the game fields of multiplelayers. The cursor is used to display a target position, aim, flightarea or the like. For example, as shown in FIG. 9, the cursor is used todisplay a current flight area on the plane of the sky (the first gamefield). However, when a plurality of game fields are observed from aviewpoint position off to the upper right/left in the world coordinatesystem and are displayed by transforming the world coordinate systeminto the screen coordinate system, it is difficult to clearly apprehendan area on the ground corresponding to the current position of theairplane. Moreover, when corresponding areas are separately indicated onthe plane of the sky and on the plane of the ground as shown in FIG. 10,it is difficult to directly apprehend the correlation between them.

Accordingly, another invention of the present application indicatescorresponding areas in the laminated game fields in thethree-dimensional virtual space by using a three-dimensional cursor,thereby making it possible to easily apprehend the correlation betweenthese areas.

FIG. 11 describes an example of a cursor (hereinafter referred to as“three-dimensional cursor”) which takes a three-dimensional figureextending over two game fields and displays corresponding areas. The topof the three-dimensional cursor is an area of the first game field andthe bottom of the three-dimensional cursor is an area of the second gamefield, which corresponds to the area of the top. Vertexes of the top arelinked with lines with corresponding vertexes of the bottom, thereby itis possible to determine the correlation between the top and the bottomat once. In this example of the three-dimensional cursor, the top is onelarge unit area, while the bottom is composed of four unit areas. Thisis because a moving speed of an airplane is extremely different from amoving speed of a car and, therefore, the area on the ground is adjustedto a game scale of airplanes. FIG. 11 shows an example of thethree-dimensional cursor used in the first game field and L-shapedcursors are displayed at four corners of the top area. Four arrowcursors are also displayed, which indicate directions in which thecursor can proceed. It is possible to display relevant information onthe side face of the three-dimensional cursor. For example, in the caseof the three-dimensional cursor indicating a flight area of airplanes,flight altitude information (H: 3000), danger degree information (EM:50) for the area regarding dangers of antiaircraft fires, an area number(not shown) and the like are indicated.

FIG. 12 shows an example of the three-dimensional cursor displayed onthe screen when the first game field is seen from high altitude. In thisdrawing, the area of the three-dimensional cursor on the ground is shownwith oblique lines. A non-mapping portion outside the game fields isshown in black.

FIG. 13 shows an example of the cursor when the altitude of theviewpoint is lowered from a high altitude and the ground is observedfrom a low altitude. In this case, a cursor C0 takes the shape of asquare of one unit area size with a line extending from the middle ofeach of the four sides toward the center of the square, and the cursorC0 moves in the same manner as a cursor used in a common game. Moreover,it is possible to project one-unit areas in the sky onto the areas onthe ground and to display the contours C1, C2 and C3 of the projectedareas. At this time, it is possible to show a person who holds thecommand of the air by classifying the contours C1, C2 and C3 by color.

FIG. 14 shows an example of another three-dimensional cursor. In thisexample, the first game field is divided into regions and the secondgame field is divided into squares. Corresponding square areas aredetermined in accordance with center coordinates and vertex coordinatesof the region and the three-dimensional cursor is drawn with straightlines or curves linking the vertexes of the region with the vertexes ofthe corresponding square areas.

FIG. 15 shows an example of the three-dimensional cursor with which aone-fourth area in the sky corresponds to one area on the ground. FIG.16 shows an example in which one area in the sky corresponds to fourareas on the ground. There are some cases where an amount of informationregarding, for example, game rules of a unit area in the sky are verydifferent from that of a unit area on the ground. It is possible toimprove the operability and comprehensibility by adjusting the size ofthe corresponding areas.

FIGS. 17 through 19 show examples of three-dimensional cursors which aredisplayed in a case of a ground attack by airplanes. FIG. 17 shows anexample of the three-dimensional cursor for a fighter plane, FIG. 18shows an example of the three-dimensional cursor for an attack plane andFIG. 19 shows an example of the three-dimensional cursor for a bombingplane. In each drawing, arrows extending in horizontal directions on thetop of the cursor indicate a fighting capacity. An arrow extendingdownward indicates a bomb trace. The width of the downward arrow isdecided in accordance with the degree of blasting power. A fighter planehas a high fighting (attack) capacity, but carries bombs of smalldestructive power. An attack plane has a fighting capacity of a mediumdegree and has large destructive power. A bombing plane has a lowfighting capacity, but has strong destructive power in a wide range.

FIG. 20 is a flowchart which explains an algorithm to display thethree-dimensional cursor. If the main program (not shown) selects athree-dimensional cursor display routine, this routine is executed.

The CPU reads a position of a polygonal cursor on the plane of the sky(the first game field) (S302) and reads coordinates of each vertex ofthe cursor (S304). The coordinates of each vertex of the cursor aretransformed into the coordinate system for display on the screen (S306).The transformed coordinates are drawn on the memory to display thecursor on the plane of the sky on the screen (S308).

It is determined whether or not it is possible to make a ground attackat this cursor position (S310). If it is impossible to make an attack(S310: No), this routine is terminated and the processing returns to themain program.

If it is possible to make a ground attack (S310: Yes), a range of theplane of the ground against which an attack can be made from the cursorposition on the plane of the sky is read from a table or is obtained bycalculation (S312). Such a range is made an attack range and vertexcoordinates of the range are found (S314) The coordinates of each vertexof the attack range are transformed into coordinates of the displaycoordinate system (S316). The attack range is displayed on the plane ofthe ground (S318). Straight lines which link the cursor vertexes on theplane of flight with corresponding vertexes of the attack range on theplane of the ground are drawn to form the three-dimensional cursor whichappears to be three-dimensional. At the time of such drawing, variouskinds of information is written on the side face of thethree-dimensional cursor (S320).

The three-dimensional cursor in the above-described shape is therebyobtained with its top indicating the cursor range on the plane offlight, and with its bottom indicating the attack range, and with thecorresponding vertexes of both the ranges linked with lines to indicatethe corresponding areas

The three-dimensional cursor which is drawn in a three-dimensionalmanner over the first game field and the second game field in thethree-dimensional virtual space may be made to undergo coordinatetransformation to be displayed on the screen. Information such as analtitude, a danger degree and a flight area may be pasted as textures onthe side face of the three-dimensional cursor.

FIGS. 21 through 23 explain improvements to a display mode of the gamefield.

The game field of the ground is mapped and is designed in a manner suchthat a ground scenery can be observed from the sky. However, mapping (orpicture pasting) is not applied to all parts of the game fields. When anon-mapping portion of the game field is observed from the sky, thenon-mapping portion to which pictures are not pasted appears as a blackzone on the screen as shown in FIG. 12. This is an unnatural pictureand, therefore, it is desirable to cause the non-mapping portion not toappear on the screen.

Accordingly, if the view (or display area) extends beyond the mappedarea, the viewpoint position is adjusted to return the view range to themapped game field.

FIGS. 21 and 22 explain such processing. FIG. 21 shows the state inwhich the cursor has moved close to the upper edge of the map. In thisdrawing, the mapped picture ends at the portion with oblique lines,beyond which is displayed in black.

If the cursor is located at a point C close to the upper edge of themap, the viewpoint position is at V1. At this point, roughly the upperhalf or larger area of a picture appearing on the screen is displayed inblack. Accordingly, the viewpoint position is moved from V1 to V2 inorder to make an adjustment so that the black portion outside the mapwill not come within view. A movement distance of the viewpoint can beobtained as follows.

When the letter “S” represents a point where a straight line linking theviewpoint V1 with the upper edge of a virtual screen (or a plane ofprojection) SC intersects the map plane and the letter “T” representsthe upper edge of the map, a correction value ΔV is obtained by thefollowing formula:

ΔV=V 1−V 2 =S−T

It is possible to obtain ΔV by using the coordinates of the point S andthe point T. The viewpoint position is moved by ΔV from the viewpointposition V1 to correct it to the viewpoint position V2. The blackportion will not appear in screen picture taken from the viewpoint V2.Such an adjustment is made in the x-axis direction and the y-axisdirection.

FIG. 22 shows the state where the cursor has moved close to the loweredge of the map. In this drawing, the portions corresponding to FIG. 21are given the same reference numeral. In this case as well, it ispossible to cause the black portion appearing in roughly the lower halfof the screen at the viewpoint position V1 to disappear by moving theviewpoint position V1 to the position V2 by ΔV in the same manner asdescribed above.

An explanation is hereinafter given with reference to FIG. 23 about analgorithm for determination of margins of the viewpoint position and foradjustment of the viewpoint position.

Inside the CPU, a cursor movement control means for moving the cursor inaccordance with operation of the pad 2 b or a joystick is formed. Aviewpoint control means is also formed for following the viewpoint sothat the position of the cursor will be located, for example, in aline-of-sight direction. The main program detects that a command to movethe cursor has been given by the pad or joystick (S402) and theprocessing then shifts to this routine.

A movement ending position of the cursor is decided on the basis of thecommand of movement and the coordinates of the cursor in thethree-dimensional virtual space are updated (S404). The coordinates ofthe cursor are transformed into the screen coordinate system for thetelevision screen (S406). It is determined whether or not the cursorposition of the screen coordinate system is located inside the screen(S408). If it is inside the screen, the cursor is displayed on thescreen (S418) and the processing returns to the main program.

If the cursor position is not inside the screen (S408), the viewpointposition which will make the cursor located at a central position of thescreen is obtained (S410). It is determined whether or not thisviewpoint position is beyond a limit position. For example, as describedin FIG. 21, a determination is made on the basis of whether or not theposition of the cursor C has moved beyond the edge T of the mapping area(S412). It is also possible to previously define the area within whichthe viewpoint can move on condition that the aforementioned non-mappingarea will not be caused to appear, and to set the margins of this areaas the limit positions.

If the viewpoint position is not beyond the limit position, theviewpoint is moved to the center of the screen (S414). If the viewpointposition is beyond the limit position, a position correction amount iscalculated so that the viewpoint position will come within the limitposition. For the calculation of the correction amount, the algorithm toobtain ΔV, which has been described with reference to FIGS. 21 and 22,can be used (S416). The viewpoint is moved to a corrected position(S414). The cursor is displayed in a picture as seen from this viewpoint(S418).

Such a procedure to change the viewpoint makes it possible to cause thenon-mapping portion (the black portion) not to be displayed on thescreen.

An explanation is hereinafter given with reference to FIGS. 24 through26 about an expression of raining which will give a taste of threedimensions as seen from the viewpoint looking down from the sky.

First, as shown in FIG. 24, a storage area for a rain basic pattern issecured on the V-RAM. For example, a display area of 512×1024 dots issecured. This area is divided into, for example, three areas which formthree stages, top, middle and bottom. A large number of large rain droppatterns are written on the top area. A large number of medium-sizedrain drop patterns are written on the middle area. A large number ofsmall rain drop patterns are written on the bottom area.

Next, a picture for scrolling is divided in a vertical direction into anappropriate width, for example, a 12-dot (or 12-line) width, therebyforming strip-shaped areas. Then a line scrolling function of the VDP130 is utilized to display large, medium and small rain drops repeatedlyin the respective strip-shaped areas on the screen as shown in FIG. 25.In doing so, the area of the large rain drops is scrolled at acomparatively high speed, the area of the medium rain drops is scrolledat a medium speed, and the area of the small rain drops is scrolled at aslowly speed. Boundaries between the strip-shaped areas are slowly moveddownward so that the boundaries will be made inconspicuous.

Such picture processing makes it possible to give a player a visualeffect of causing rain drops to seem falling from the sky down to theground.

Moreover, as shown in FIG. 26, in each strip-shaped area, the upper edgeline of the area is expanded and displayed and the area is displayed byreducing an expansion ratio as going down to lower lines from the upperedge line. The expansion ratio k of each line is represented by thefollowing formula:

k=1/(1−α×line number)

The letter “α” is approximately 0.015 and the line number of the upperedge of the area is 11 and the line number of the lower edge of the areais 0.

By performing such picture processing and displaying resultant pictures,it is possible to give a player a visual effect of causing the raindrops to seem falling toward and gathering at the center of the screen.

FIG. 27 shows a display algorithm to realize the above-mentionedraining.

First, a time parameter (the number of frames) t is initialized (S504).A parameter v. (0<v≦224) is initialized, which represents a verticaldirection coordinate on the television screen (S506). Areduction/expansion ratio (or scale factor) function k(v, t) whichdecides the size of rain drops is set at the VDP (S508). Accordingly,the reduction/expansion ratio of a certain line of a certain frame isset.

The function k(v, t) can be obtained by the following formula when theletter “b” represents a residual of a division of (v+s·t) divided bytwelve, the number of lines: k(v, t)=1/(1−(11−b)×α). The letter “s” isthe moving speed for the boundaries between the strip-shaped areas.Eleven is the line at the upper edge of the strip.

Then, a size function size(v, t) which represents the size of rain dropsis used to read the size (S510).

According to the function size(v, t), the following results are obtainedon condition that the letter “a” represents a residual of a division of(v+s·t) divided by 36, the number of lines (12 lines×3). When a is lessthan 12 (a<12), size(v, t) results in large rain drops. When a isgreater than or equal to 12 and is less than 24 (12≦a<24), size(v, t)results in medium rain drops. When a is greater than or equal to 24(a≧24), size(v, t) results in small rain drops. When (v+s·t) is greaterthan 224 ((v+s·t)>224), 224 is subtracted from (V+s·t).

Subsequently, on the basis of the results of the rain drop size asdescribed above, the y coordinate value y(v, t) of the V-RAM, whichcorresponds to each line of the television screen is obtained (S512through S518).

Assuming that respective speeds of the large, medium and small raindrops are SL, SM and SS, the coordinate on the V-RAM to be displayed isyL(v, t)=v+SL·t in the case of large rain drops. However, if (v+SL·t) isgreater than 511 ((v+SL·t)>511), 512 is subtracted from (v+SL·t) (S514).In the case of medium rain drops, the coordinate to be displayed isyM(v, t)=v+SM·t. However, if (v+SM·t) is greater than 767, 256 issubtracted from (v+SL·t) (S516). In the case of small rain drops, thecoordinate to be displayed is yS(v, t)=v+SS·t. However, if (v+SS·t) isgreater than 1023, 256 is subtracted from (v+SS·t) (S518).

The y coordinate value y(v, t) on the V-RAM is set at the VDP.Accordingly, a reduction/expansion ratio and a reading position at they(v, t) position are set at the VDP and the rain pattern stored on theV-RAM is drawn at the designated reduction/expansion ratio (S520).

Subsequently, one line is added to the coordinate v of the verticaldirection of the screen (S220). It is determined whether or not the ycoordinate v has reached the last line of a frame (S224). Until itreaches the last line, the steps S508 through S522 are repeated toperform drawing for one frame.

When the coordinate v has reached the last line, one is added to a framenumber (S526) and the processing waits for the next frame display timing(S528). The variable v is reset (S502) and the same processing (S508through S524) is repeated from the first line of the next frame.

This algorithm can be performed from the upper edge of the screen towardthe center of the screen or from the lower edge of the screen toward thecenter of the screen. Moreover, by changing a method of obtainingcoordinates, it is possible to perform the algorithm from the left edgeof the screen to a rightward direction or from the right edge of thescreen to a leftward direction.

Images of raining which are drawn by the above-described algorithm cangive a player a visual effect of causing the rain drops to seem fallingtoward the center of the screen.

As described above, the present invention is capable of shiftingpictures (or viewpoints) from one game field to another game field and,therefore, is capable of easily expressing the correlation between thefields, for example, in the sky, on the ground, on the sea, under theground and under the sea. Since it is possible to construct a gamesystem for each game field, it is easy to have games of differentalgorithms, scroll speeds, game scales or the like coexist.

When the viewpoint is located in the sky, an upper layer and a lowerlayer are simultaneously displayed, thereby obtaining an easilycomprehensible image for a game such as a bombing game or an air battle.It is also possible to express, for example, clouds between the gamefields by using a semitransparent function.

Other than the case where a plurality of game fields are laminated in avertical direction, that is, one over the other, the game fields may belaminated in a horizontal direction,, that is, from right to left orvice versa. Moreover, a plurality of game fields may be formed in apartial area of the three-dimensional virtual space.

As described above, this invention makes it possible to form game fieldsin plural layers in the three-dimensional virtual space, therebyproceeding games in a manner such that the games proceed in therespective game fields simultaneously. It is also possible to proceed agame by using an individual algorithm for each game field. It ispossible to move a viewpoint continuously between the fields. It is alsopossible to proceed a game by correlating the game fields.

Moreover, the corresponding areas in the game fields are expressed witha three-dimensional cursor, thereby obtaining a cursor which makes iteasy to understand the correlation between the corresponding areas.

Furthermore, according to this invention, a viewpoint position isdetermined so that a non-mapping area of a game field will not bedisplayed. Accordingly, it is possible to avoid display of unnaturalobjects on the screen.

This invention also makes it possible to form pictures which showsomething such as rain or snow falling from the sky down to the ground.

What is claimed is:
 1. A game device for a game which proceeds byplacing objects related to the game in a three-dimensional virtual spaceand by controlling said objects, comprising: first game proceeding meansfor proceeding the game by controlling said objects in a first gamefield in said three-dimensional virtual space; second game proceedingmeans for proceeding the game by controlling said objects in a secondgame field in said three-dimensional virtual space; and perspectivetransformation display means for forming a screen picture bytransforming coordinates of each object in said first game field andsaid second game field existing within view of a viewpoint located insaid three-dimensional virtual space; wherein said first game proceedingmeans and said second game proceeding means determine respectiveproceeding speeds of said first game field and said second game fieldseparately.
 2. A game device according to claim 1, wherein when theviewpoint is moved between said first game field and said second gamefield, said perspective transformation display means reduces the firstgame field and displays a reduced game field, obtained by reducing thefirst game field, in a picture of the second game field.
 3. A gamedevice for a game which proceeds by placing objects related to the gamein a three-dimensional virtual space and by controlling said objects,comprising: first game proceeding means for proceeding the game bycontrolling said objects in a first game field in said three-dimensionalvirtual space; second game proceeding means for proceeding the game bycontrolling said objects in a second game field in saidthree-dimensional virtual space; mutual processing means for processingthe game between said first game field and said second game field andfor placing and controlling said objects in relation to said processing;and perspective transformation display means for forming a screenpicture by transforming coordinates of each object within view of aviewpoint located in said three-dimensional virtual space, wherein saidfirst game proceeding means and said second game proceeding meansdetermine respective scroll speeds of said first game field and saidsecond game field separately.
 4. A game device according to claim 3,wherein when the viewpoint is moved between said first game field andsaid second game field, said perspective transformation display meansreduces the first game field and displays a reduced game field, obtainedby reducing the first game field, in a picture of the second game field.